#include "junix.h"

class B;
class A {
	public:
		void operator *(const B& b) {
			std::cout<<"A.operator*"<<std::endl;
		}
};

void operator* (const A& a,const B& b) {
	std::cout<<"operator*(const A& a, const B&b)"<<std::endl;
}

void operator* (const B& b,const A& a) {
	std::cout<<"operator*(const B& b, const A&a)"<<std::endl;
}


void operator* (B& b,A& a) {
	std::cout<<"operator*(B& b, A&a)"<<std::endl;
}
class B{};

int main(){
	A a;
	B b;
	a*b;
	b*a;
}
